package com.study.d6_io_buffer;

import java.io.*;

public class ByteDemo {
    public static void main(String[] args) {
        //前两种刚学的都是原始流，缓冲流叫做包装流/处理流
        //缓冲流：对原始流进行包装，以提高原始流读写数据的性能
        //原理：字节缓存输入流自带了8KB缓冲池，字节缓存输出流也自带8KB缓冲池
                //可以提高原始字节流、字符流读写数据的性能

                //改造后功能没变化，性能提升了
        try {
            InputStream is = new FileInputStream("C:\\Users\\51230\\Desktop\\微信图片_20241122074111.jpg");
            BufferedInputStream bi = new BufferedInputStream(is);
            OutputStream os = new FileOutputStream("C:\\Users\\51230\\Desktop\\微信图篇-bak.jpg");
            BufferedOutputStream bo = new BufferedOutputStream(os);
            byte[] buffer=new byte[1024];
            int len;
            while((len=bi.read(buffer))!=-1){
                bo.write(buffer,0,len);
            }
            System.out.println("复制成功");
        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}
